Global Invariants for Analyzing Multi-threaded Applications

نویسندگان

  • Helmut Seidl
  • Varmo Vene
  • Markus Müller-Olm
چکیده

We exhibit an interprocedural framework for the analysis of multi-threaded programs based on partial invariants of a new kind of constraint systems which we call side-effecting. We explore the formal properties of these constraint systems and provide general techniques for computing partial invariants. We demonstrate the practicality of this approach by designing and implementing a reasonably efficient flowand context-sensitive interprocedural data-race analyzer of multi-threaded C.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Global Multi-Threaded Instruction Scheduling: Technique and Initial Results

Recently, the microprocessor industry has reached hard physical and micro-architectural limits that have prevented the continuous clock-rate increase, which had been the major source of performance gains for decades. These impediments, in conjunction with the still increasing transistor counts per chip, have driven all major microprocessor manufacturers toward Chip Multiprocessor (CMP) designs....

متن کامل

Partial Redundancy Elimination for Multi-threaded Programs

Multi-threaded programs have many applications which are widely used such as operating systems. Analyzing multi-threaded programs differs from sequential ones; the main feature is that many threads execute at the same time. The effect of all other running threads must be taken in account. Partial redundancy elimination is among the most powerful compiler optimizations: it performs loop-invarian...

متن کامل

Global Instruction Scheduling for Multi-threaded Architectures

Recently, the microprocessor industry has moved toward multi-core or chip multiprocessor (CMP) designs as a means of utilizing the increasing transistor counts in the face of physical and micro-architectural limitations. Despite this move, CMPs do not directly improve the performance of single-threaded codes, a characteristic of most applications. In effect, the move to CMPs has shifted even mo...

متن کامل

Comparing Alternative Programming Techniques for Multi - threaded CORBA Servers ( Column 6 )

Modern OS platforms like Windows NT, and OS/2 and some flavors of UNIX provide extensive library and system call support for multi-threaded applications. However, programming multi-threaded applications is hard and programming distributed multi-threaded applications is even harder. In particular, developers must address sources of accidental and inherent complexity: Accidental complexity of mul...

متن کامل

Object Interconnections Comparing Alternative Programming Techniques for Multi - threaded

Modern OS platforms like Windows NT, and OS/2 and many flavors of UNIX provide extensive library and system call support for multi-threaded applications. However, programming multi-threaded applications is hard and programming distributed multi-threaded applications is even harder. In particular, developers must address sources of accidental and inherent complexity: Accidental complexity of mul...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003